Skip to content

Conversation

@jfreden
Copy link
Contributor

@jfreden jfreden commented Oct 10, 2024

This PR is prerequisite to #114305.

This will write the ExpressionRoleMapping::name field as part of the RoleMappingMetadata persisted in cluster state. The idea is that this PR will be merged after the PR that ensures that settings.json is reloaded on every restart. When settings.json is loaded, the RoleMappingMetadata will be rewritten to cluster state with each mapping containing the new name field.

RoleMappingMetadata will be written to cluster state and persisted for all contexts, that means SNAPSHOT, GATEWAY and API.

  • GATEWAY - This is persisted across master node restarts, so I've added a new node feature to make sure that all nodes have the new parser before writing.
  • SNAPSHOT - This is persisted for snapshot purposes. Since you can’t restore an index to an earlier version of Elasticsearch persisting the new field if all nodes have the parser, should guarantee that it can be parsed after restore.
  • API - This is persisted in the cluster state API. No additional work is needed to support this.

@jfreden jfreden closed this Jan 14, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants